package org.dromara.mall.mapper;

import org.apache.ibatis.annotations.Param;
import org.dromara.mall.domain.TerMallRegional;

import org.dromara.common.core.domain.vo.CityVo;
import org.dromara.mall.domain.vo.TerMallRegionalVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;

import java.util.Collection;
import java.util.List;

/**
 * 区域信息Mapper接口
 *
 * @author xch
 * @date 2025-06-26
 */
public interface TerMallRegionalMapper extends BaseMapperPlus<TerMallRegional, TerMallRegionalVo> {


    /**
     * 查询待恢复记录的删除状态
     * @param ids 主键集合
     * @return 包含ID和删除状态的记录列表
     */
    List<TerMallRegional> selectDelFlagsByIds(@Param("ids") Collection<Long> ids);

    /**
     * 批量恢复记录
     * @param ids 主键集合
     * @return 更新成功的记录数
     */
    int recoverByIds(@Param("ids") Collection<Long> ids,@Param("updateBy") Long updateBy);


    /**
     * 批量永久删除记录
     * @param ids 主键集合
     * @return 更新成功的记录数
     */
    int foreverDeleteByIds(@Param("ids") Collection<Long> ids);

    /**
     * 查询已开通城市
     * @return
     */
    List<CityVo> selectOpenedCities();
}
